package com.tinem.platform.module.starter.jpa.entity.config;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;

import javax.persistence.*;
import java.io.Serializable;
import java.math.BigInteger;

/**
 * @author fzh
 * @version v1
 * @program: platform
 * @className ConfigWebFileClient
 * @description 文件上传配置表
 * @site
 * @company
 * @create 2022-6-24
 */
@Data
@Entity
@ToString
@DynamicInsert
@DynamicUpdate
@EqualsAndHashCode
@NoArgsConstructor
@AllArgsConstructor
@Table(name="t_config_web_file_client")
@ApiModel("文件上传配置表")
public class ConfigWebFileClient implements Serializable,Cloneable{
    @Id
    @Column(name = "c_id",nullable=true)
    @ApiModelProperty(name = "id", value = "ID",required = true)
    private String id;

    @Column(name = "c_chennel_file_prefix",nullable=true)
    @ApiModelProperty(name = "chennelFilePrefix", value = "渠道文件存储前缀",required = true)
    private String chennelFilePrefix;

    @Column(name = "c_chennel_url_prefix",nullable=true)
    @ApiModelProperty(name = "chennelUrlPrefix", value = "渠道文件url访问前缀",required = true)
    private String chennelUrlPrefix;

    @Column(name = "c_chennel_file_max_size",nullable=true)
    @ApiModelProperty(name = "chennelFileMaxSize", value = "单个文件上传大小限制",required = true)
    private BigInteger chennelFileMaxSize;

    @Column(name = "c_chennel_storage_size",nullable=true)
    @ApiModelProperty(name = "chennelStorageSize", value = "渠道存储大小",required = true)
    private BigInteger chennelStorageSize;

    @Column(name = "c_chennel_use_storage_size",nullable=true)
    @ApiModelProperty(name = "chennelUseStorageSize", value = "已经使用的存储大小",required = true)
    private BigInteger chennelUseStorageSize;

    @Version
    @Column(name = "c_revision",nullable=true)
    @ApiModelProperty(name = "revision", value = "乐观锁",required = false)
    private Integer revision;

    @Column(name = "c_created_by",nullable=true)
    @ApiModelProperty(name = "createdBy", value = "创建人",required = false)
    private String createdBy;

    @Column(name = "c_created_time",nullable=true,insertable = false,updatable = false)
    @ApiModelProperty(name = "createdTime", value = "创建时间",required = false)
    private java.util.Date createdTime;

    @Column(name = "c_updated_by",nullable=true)
    @ApiModelProperty(name = "updatedBy", value = "更新人",required = false)
    private String updatedBy;

    @Column(name = "c_updated_time",nullable=true,insertable = false,updatable = false)
    @ApiModelProperty(name = "updatedTime", value = "更新时间",required = false)
    private java.util.Date updatedTime;

}